#include "parameter.h"

const char * GetDeviceType(void)
{
    return DEVICE_TYPE_INFO;
}

const char * GetManufacture(void)
{
    return MANUFACTURE_INFO;
}

const char *  GetBrand(void)
{
    return BRAND_INFO;
}

const char *  GetMarketName(void)
{
    return MARKNAME_INFO;
}

const char *  GetProductSeries(void)
{
    return PRODUCTMODEL_INFO;
}

const char *  GetProductModel(void)
{
    return PRODUCTMODEL_INFO;
}

const char *  GetSoftwareModel(void)
{
    return HARDWAREMODEL_INFO;
}

const char *  GetHardwareModel(void)
{
    return HARDWAREPROFILE_INFO;
}

const char *  GetHardwareProfile(void)
{
    return HARDWAREPROFILE_INFO;
}

const char *  GetOSFullName(void)
{
    return OSFULLNAME_INFO;
}

const char *  GetDisplayVersion(void)
{
    return DISPLAYVERSION_INFO;
}

int GetSdkApiVersion(void)
{
    int sdkapi = SDKAPI_VERSION;
    return sdkapi;
}

const char *  GetBootloaderVersion(void)
{
    return BOOTLOADERVERSION_INFO;
}

const char *  GetSecurityPatchTag(void)
{
    return SECURITYPATHTAG_INFO;
}

const char *  GetAbiList(void)
{
    return ABILIST_INFO;
}

const char *  GetIncrementalVersion(void)
{
    return INCREM_VERSION_INFO;
}

const char *  GetBuildType(void)
{
    return BUILD_TYPE_INFO;
}

const char *  GetBuildUser(void)
{
    return BUILDUSER_INFO;
}

const char *  GetBuildHost(void)
{
    return BUILD_HOST_INFO;
}

const char *  GetBuildTime(void)
{
    return BUILD_TIME_INFO;
}

const char *  GetBuildRootHash(void)
{
    return BUILD_ROOT_HASH;
}

const char *  GetSerial(void)
{
    return SERIAL_INFO;
}

int GetFirstApiVersion(void)
{
    int firstapi_version = FIRSTAPIVERSION_INFO;
    return firstapi_version;
}

int GetDevUdid(char *udid, int size)
{   
    memcpy(udid, DEVICE_UDID, size);
    return 0;
}

char value[VERSION_ID_MAX_LEN] = {0};
const char *  GetVersionId(void)
{
    sprintf(value, "%s/%s/%s/%s/%s/%s/%s/%d/%s/%s",
        GetDeviceType(), GetManufacture(), GetBrand(), GetProductSeries(),
        GetOSFullName(), GetProductModel(), GetSoftwareModel(), GetSdkApiVersion(), GetIncrementalVersion(), GetBuildType());
    return value;
}
